// Evol scripts.
// Authors:
//    Alige
//    Reid
// Description:
//    Cookie NPC, beware, if you don't take your cookie, she'll keep it!
// Variables:
//    General_Cookies
// Values:
//    0   Default, didn't get a cookie.
//    1   Get a cookie.

001-1,39,38,0	script	Cookie Master	NPC_COOKIE_MASTER,{
    if ((countitemcolor(517) == 0) && (getq(General_Cookies) == 1))
        goto L_LostCookie;
    if (getq(General_Cookies) == 1)
        goto L_GetCookie;

    mesn;
    mesq lg("Hey! Adventurer! Are you enjoying your life on Aemil?");
    next;

    select
        l("Well in fact...");

    mes "";
    mesn;
    mesq l("Shht shht!");
    next;
    mesq l("Don't tell me more, I know what you want...");
    next;
    mesq l("A cookie!");
    next;

    menu
        l("I'd love one!"), -,
        l("No thank you, I'm fine. I'll come back later."), L_Bye;

    mes "";
    mesn;
    mesq lg("Of course you do! Just listen carefully to these words my dear.");
    next;
    mesq l("Cookies are a source of life.");
    next;
    mesq l("Cookies provide you strength, health and cuteness.");
    next;
    mesq l("Cookies are awesome, so am I.");

    menu
        l("Uhm... Your story seems..."), L_StorySeems,
        l("Wait... That's not the place for a chef, what are you doing here?"), L_Presentation,
        l("Exactly! Can I have one now?"), -;

L_Check:
    mes "";
    mesn;
    mesq l("Let me check my cookie list...");
    next;

// Beta3 Contributors.
    if (strcharinfo(0) == "4144") goto L_Reward;
    if (strcharinfo(0) == "Alige") goto L_Reward;
    if (strcharinfo(0) == "enchilado") goto L_Reward;
    if (strcharinfo(0) == "hal9000") goto L_Reward;
    if (strcharinfo(0) == "Reid") goto L_Reward;
    if (strcharinfo(0) == "Socapex") goto L_Reward;
    if (strcharinfo(0) == "Kenny690") goto L_Reward;
    if (strcharinfo(0) == "Nelson6e65") goto L_Reward;
    if (strcharinfo(0) == "Steel Zenn") goto L_Reward;
// Aurora1 Contributors.

    mesq l("I'm sorry but I can't see your name anywhere.");
    next;
    mesq l("You see, my cookies are restricted to a certain type of people...");
    next;

    menu
        l("Seriously? It's just a cookie you know... Tell me what I should do to get one."), L_MTaskExpanation,
        l("Yes, yes I know... Too bad then. See you soon!"), L_Bye;

L_StorySeems:
    mes "";
    mesn;
    mesq l("What about my story?");
    next;

    menu
        l("It's interesting and exciting at the same time!"), -,
        l("Honestly, it's quite far-fetched according to me."), L_Kick;

    mes "";
    menu
        l("Too bad I'm not hungry enough right now for these... cookies. I'll maybe come back later."), L_Bye,
        l("How can I get one of these cookies?"), -;

    mes "";
    mesn;
    mesq g(l("It looks like madam is curious, am I right?"),
           l("It seems mister is curious, are you not?"));
    next; 
    mesq lg("Well, if you want to be one of those who can have a cookie...");
    next;

L_BTaskExpanation:
    mes "";
    mesn;
L_TaskExpanation:
    mesq l("You'll first need to help my friends.");
    next;
    mesq l("It is them who tell me to whom I can give cookies.");
    next;

    menu
        l("So you're under the control of dictators, that's... reassuring."), L_Control,
        l("Who are these friends?"), L_Friends;

L_Friends:
    mes "";
    mesn;
    mesq l("Shht shht!");
    next;
    mesq l("Don't say it too loud, other people could hear us.");
    next;
    mesq l("My friends are... Well, you know... The creators.");
    next;
    mesq l("I can't help you to be on my list, nor can I give you a cookie for free.");
    next;
    mesq l("All I can do is tell you that...");
    next;
    mesq l("If you see weird things, or things that shouldn't be here, or even things that you would like to see there...");
    next;
    mesq l("Simply contact them, help them and be kind. They might surely add you to my cookie list!");
    next;

    mesn "Narrator";
    mes col(l("This Cookie Master rewards people who contribute and develop this world."), 9);
    next;
    mes col(lg("If you want to be rewarded, help us in making this world a better place."), 9);
    next;
    mes col(l("When you see something that looks more like a bug than a feature, report it on http://bugs.evolonline.org or try to contact a game contributor."), 9);
    next;
    mes col(l("Any contribution to the game (translations, graphics creation/edition, concepts, coding/scripting, etc...) is rewarded!"), 9);

    mes "";
    mesn;
    mesq l("So, do you still want a cookie now?");
    next;

    menu
        l("I wish I helped your friends, because I'd really, really like a cookie."), -,
        l("You tell me. Do I deserve a cookie?"), L_Check;

    mes "";
    mesn;
    mesq l("Don't worry, I'm sure you will help them soon enough!");
    next;

    goto L_Bye;

L_Presentation:
    mes "";
    mesn;
    mesq l("For a chef? Who said I was a... Oh right, I am.");
    next;
    mesq l("I was sent here with a task. I can give you a perfect, wonderful, magnificent, superbly well shaped... Cookie!");
    next;
    mesq l("But...");
    next;

    goto L_TaskExpanation;

L_Reward:
    mesq l("Yes! @@ is written on my cookie list.", strcharinfo(0));
    next;
    mesq lg("That's quite surprising... You don't look very helpful.");
    next;
    mesq l("Anyway, here, have a cookie!");

    .@item = 517;
    .@count = 1;
    inventoryplace 517, 1;

    setq General_Cookies, 1;
    getitem 517, 1;
    npctalk3 l("You receive a @@!", getitemlink(517));

    next;
    mesq lg("I'm sure you'll appreciate its effect, but be careful, these cookies are rare, and you'll need to help the community again before being able to receive another one.");
    next;

    goto L_Bye;

L_Control:
    mes "";
    mesn;
    mesq l("C'mon, don't be like that and loosen up! Don't you want to know who's behind all of this?!");
    next;

    menu
        l("Why not, this might get interesting."), L_Friends,
        l("Fine, tell me, who are these mysterious aliens?"), -,
        l("No, and I gotta go, see you."), L_Kick;

    mes "";
    mesn;
    mesq l("Don't mock me, my work is admirable.");
    next;

L_Kick:
    closedialog;

    npctalk3 l("No cookie for you!");
    warp "001-1.gat", 39, 41;

    close;

L_GetCookie:
    mesq l("Hey, I'm not a drug dealer! You won't have another one by stalking me like that!");
    next;
    mesq l("If you want another cookie, you know what to do!");
    next;
    mesq l("Now, move!");
    next;

    goto L_Bye;

L_LostCookie:
    mesq l("Hey, how was the...");
    next;
    mesq l("Wait a minute, where's the cookie I gave you?");
    next;
    mesq l("I'm talking about the cookie in which I put all my love inside!");
    next;
    mesq l("The best, the wonderful, the best cookie between all others, the...");
    next;
    // Angry emote
    mesq l("Grr...");
    next;
    mesq l("You're lucky that I'm a generous person, here's another one.");
    next;
    mesq l("This is the last one. If you use it again out of clumsiness, I will take your flesh as the main ingredient for my cookie recipe.");
    next;

    .@item = 517;
    .@count = 1;
    inventoryplace 517, 1;

    getitem 517, 1;
    npctalk3 l("You receive a @@!", getitemlink(517));

L_Bye:
    closedialog;

    npctalk3 l("See you later!");

    close;

OnInit:
    .sex = G_FEMALE;
    .distance = 2;
    end;
}
